1. Field of the Invention
Embodiments of the invention generally relate to monitoring computer systems and, in particular, to systems and methods for model-based monitoring of performance data.
2. Description of the Related Art
Information technology (IT) specialists, or system administrators, are responsible for monitoring, maintaining, protecting and configuring computer systems and their resources. System administrators are often asked to provide access to these resources at practically any time of the day while ensuring the system's integrity is not threatened by dataflow bottlenecks or excessive overhead.
To aid administrators in ensuring accessibility and system integrity, many computer systems provide performance data in the form of reports, query-accessible tables, printouts, and the like. Traditional data monitoring of such computer systems is generally focused on whether certain modules are running and/or actions are required to ensure that modules are running.
As computer systems and their applications have become more complex and relied upon more heavily by businesses, the demands on system administrators have increased. However, traditional monitoring systems are oftentimes designed for substantially static IT systems, being inflexible to change, and require significant manual intervention. For instance, traditional monitoring systems often include hard-coded, inflexible policies that are individually assigned to each of thousands of changing nodes of a computer system. Moreover, addition of new elements to the computer system often requires adjustments to several, if not all, of the existing policies of the monitoring system.
Moreover, traditional monitoring generally organizes performance data by point of collection. That is, there often exists a one-to-one correlation between a logical host of the monitoring system and a physical host device of the monitored system. These traditional monitoring systems also often store monitored data in a single table and perform data correlation inside that table.
Data received from the monitoring systems can further be used in performance management of the computer system. Such management includes: keeping the system running, making the system run faster, allocating more data on fewer parts, design, capacity planning, profiling, diagnosis and the like. While data monitoring is generally concerned with how modules are performing, performance management focuses more on keeping a computing system running over time.